package com.library.librarybackend.domain.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * @author 平
 * @description 附件VO
 * @since 2025-09-21 14:31
 */
@Data
public class AttachmentVO {

    /**
     * 主键id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @Schema(description = "主键id")
    private Long id;

    /**
     * 所有者类型
     */
    @Schema(description = "所有者类型")
    private String ownerType;

    /**
     * 所有者id
     */
    @Schema(description = "所有者id")
    private Long ownerId;

    /**
     * 对象名称
     */
    @Schema(description = "对象名称")
    private String objName;

    /**
     * 文件名称
     */
    @Schema(description = "文件名称")
    private String filename;

    /**
     * 文件存储路径
     */
    @Schema(description = "文件存储路径")
    private String path;

    /**
     * 文件url
     */
    @Schema(description = "文件url")
    private String url;

    /**
     * 类型
     */
    @Schema(description = "类型")
    private String type;

    /**
     * 大小
     */
    @Schema(description = "大小")
    private Long size;


}
